package com.alibaba.citrus.ots.b2b.trade.order.repository;

import com.alibaba.cz.base.tool.page.PageResult;
import com.alibaba.lattice2.epoch.sdk.model.Result;
import com.epoch.app.otsb2btradecenter.dto.request.OrderPageQueryRequest;
import com.epoch.app.otsb2btradecenter.dto.request.OrderQueryRequest;
import com.epoch.app.otsb2btradecenter.dto.response.OrderPageQueryResponse;
import com.epoch.app.otsb2btradecenter.dto.response.OrderQueryResponse;
import com.epoch.app.otsb2btradecenter.model.dto.PageQueryOrderEsListRequest;
import com.epoch.app.otsb2btradecenter.sdo.OrderSDO;

import java.util.List;

/**
 * @author 张苏徽
 * @date 2021/9/9
 */
public interface OrderQueryRepository {

    /**
     * 分页查询销售订单列表
     * @param request OrderPageQueryRequest
     * @return
     */
    PageResult<List<OrderPageQueryResponse>> pageQuery(OrderPageQueryRequest request);

    /**
     * 查询销售订单详情
     * @param request OrderQueryRequest
     * @return OrderSDO
     */
    OrderQueryResponse query(OrderQueryRequest request);

    OrderSDO querySingle(OrderQueryRequest request);

    Result<List<OrderPageQueryResponse>> pageQueryES(PageQueryOrderEsListRequest request);
}
